{{tag>Xenial tutoriel bureautique SGBD}}
----

====== Comment lire une base de données Microsoft Access (*.mdb , *.accdb) ======

Ce tutoriel utilise LibreOffice Base et le pilote open-source [[wpfr>JDBC]]((Java Database Connectivity)) UCanAccess.

UCanAccess peut lire et écrire dans les bases Access de Microsoft aux formats mdb et accdb des versions Access 2000, 2002/2003, 2007, 2010/2013/2016. Il peut aussi accéder en lecture seule au format Access 97.

===== Pré-requis =====

  * Disposer des [[:sudo|droits d'administration]].
  * Disposer d'une connexion à Internet configurée et activée.
  * [[:tutoriel:comment_installer_un_paquet|Avoir installé]] **[[apt>libreoffice-base]]**((https://doc.ubuntu-fr.org/libreoffice)) , **[[apt>icedtea-plugin]]**((https://doc.ubuntu-fr.org/java)).

=====  Le pilote JDBC =====

Tout d'abord, il vous faudra :
  * Télécharger le pilote JDBC [[http://ucanaccess.sourceforge.net/site.html|UCanAccess]].
  * [[:archivage#graphiquement|Extraire l'archive]]  dans le répertoire de votre choix, en conservant sa structure.

===== Activation du pilote UCanAccess dans LibreOffice =====

L'étape suivante consiste à indiquer à [[:LibreOffice]] où trouver la classe JDBC UCanAcces.
  * Lancer LibreOffice, non pas LibreOffice Base, mais seulement LibreOffice.
  * Dans le menu, choisir : **Outils ⇒ Options... ⇒ Avancé**
  * Dans la partie droite de la fenêtre, cliquer sur le bouton **Chemin de la classe...**
{{ :access:options_-_libreoffice_-_avance_005.png?450  
 |}}
  * Puis , dans la partie droite de la nouvelle fenêtre, cliquer sur le bouton **Ajouter une archive**. 
{{ :access:chemin_de_classe_004.png?450 |}}
  * Naviguer, avec l'explorateur de fichier qui s'ouvre, jusqu'au répertoire où vous avez décompressé le pilote UCanAccess. Ouvrir le répertoire **loader** pour y sélectionner le fichier //ucanload.jar//.
  * Valider et fermer les fenêtres par **OK**. LibreOffice demande un redémarrage.

<note>LibreOffice 5 de [[:xenial|Ubuntu Xenial]] ne demande pas à redémarrer.</note>

===== Utilisation de UCanAccess pour ouvrir/importer une base dans LibreOffice =====

Lancer LibreOffice Base pour ouvrir le fichier de la base Access.

  * Dans l'**Assistant Bases de données**, sélectionner **Connecter une base de données existante ⇒ JDBC** et cliquer sur **Suivant**.
  * Dans la nouvelle fenêtre qui s'ouvre, renseigner l'URL de la source de données, de façon à obtenir une adresse de la forme :

<code>jdbc: ucanaccess:///chemin-vers-le-fichier.accdb</code>

  * Puis, dans la zone **Classe de pilote JDBC** rentrer ce lien :

<code>net.ucanaccess.jdbc.UcanloadDriver</code>

{{ :access:assistant_bases_de_donnees_006.png?450 |}}

  * Il ne reste plus qu'à cliquer sur **Suivant** pour préciser le nom d'utilisateur et le mot de passe le cas échéant, puis donner un nom à la nouvelle base LibreOffice qui sera créée.

=====  Voir aussi  =====
  * **(en)** Basé sur [[https://askubuntu.com/a/519571|Is it possible to open an Access 2010 database file without using Wine or VirtualBox?]] par Gord Thompson.
  * **(fr)** [[https://forum.ubuntu-fr.org/viewtopic.php?id=2012141|Lire un fichier .accdb]].
  * **(fr)** [[:libreoffice_mysql|Les bases Mysql et libreoffice]].

----
//Contributeurs principaux : [[:utilisateurs:j5012|J5012]], [[:utilisateurs:tamarou|Tamarou]].//